package com.yx.strategy.context;

import com.yx.strategy.DownStrategy;
import com.yx.strategy.factory.StrategyFactory;
import org.springframework.stereotype.Component;
import org.springframework.util.StringUtils;

/**
 * @author: dlr
 * @data: 2019/10/27 22:39
 * @desc:策略上下文
 */
@Component
public class DownContextStrategy {

    public String ToDownVideo(String type){
        if(StringUtils.isEmpty(type)){
            return "下载视频来源类型不能为空";
        }
         // 整合项目后 DownStrategy downStrategy=StrategyFactory.getDownStrategy(type); 可以从数据库中拿到对象
         DownStrategy downStrategy=StrategyFactory.getDownStrategy(type);
        if(downStrategy==null){
            return "没有具体实现策略";
        }
        //整合项目后 downStrategy 通过id 就可以直接调用
         return downStrategy.toDownVideo(type);
    }
}
